/*
 物业建筑基础分类表
 用于存储国内建筑类型的基础分类数据，支持物业系统的建筑类型管理
 
 作者: Wu.Liang
 创建日期: 2025-01-30
 版本: 1.0.0
*/

SET NAMES utf8mb4;
SET FOREIGN_KEY_CHECKS = 0;

-- ----------------------------
-- Table structure for sc_building_type_category
-- ----------------------------
DROP TABLE IF EXISTS `sc_building_type_category`;
CREATE TABLE `sc_building_type_category` (
  `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '分类ID',
  `parent_id` bigint(20) DEFAULT '0' COMMENT '父分类ID，0表示顶级分类',
  `category_name` varchar(100) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '分类名称',
  `category_code` varchar(50) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '分类编码',
  `category_type` varchar(20) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '分类类型：DIVISION-划分方式，TYPE-具体类型',
  `division_type` varchar(50) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '划分方式：PURPOSE-用途，STRUCTURE-结构，HEIGHT-高度，PROPERTY-产权，LAYOUT-户型，STYLE-风格',
  `description` text COLLATE utf8mb4_unicode_ci COMMENT '分类描述',
  `sort_order` int(11) DEFAULT '0' COMMENT '排序',
  `status` tinyint(1) DEFAULT '1' COMMENT '状态：0-禁用，1-启用',
  `create_by` bigint(20) DEFAULT NULL COMMENT '创建人',
  `create_time` datetime DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
  `update_by` bigint(20) DEFAULT NULL COMMENT '更新人',
  `update_time` datetime DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
  `deleted` tinyint(1) DEFAULT '0' COMMENT '是否删除：0-否，1-是',
  `version` int(11) DEFAULT '1' COMMENT '版本号',
  `remark` text COLLATE utf8mb4_unicode_ci COMMENT '备注',
  PRIMARY KEY (`id`),
  UNIQUE KEY `uk_category_code` (`category_code`),
  KEY `idx_parent_id` (`parent_id`),
  KEY `idx_category_type` (`category_type`),
  KEY `idx_division_type` (`division_type`),
  KEY `idx_status` (`status`),
  KEY `idx_sort_order` (`sort_order`)
) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='物业建筑基础分类表';

-- ----------------------------
-- Records of sc_building_type_category
-- ----------------------------
BEGIN;

-- 一、按建筑用途划分
INSERT INTO `sc_building_type_category` VALUES (1, 0, '按建筑用途划分', 'PURPOSE_DIVISION', 'DIVISION', 'PURPOSE', '根据建筑的主要使用功能进行分类', 1, 1, 1, NOW(), 1, NOW(), 0, 1, '建筑用途划分方式');

-- 住宅类
INSERT INTO `sc_building_type_category` VALUES (2, 1, '住宅类', 'RESIDENTIAL', 'TYPE', 'PURPOSE', '用于居住的建筑类型', 1, 1, 1, NOW(), 1, NOW(), 0, 1, '住宅建筑分类');
INSERT INTO `sc_building_type_category` VALUES (3, 2, '普通商品房', 'RESIDENTIAL_COMMERCIAL', 'TYPE', 'PURPOSE', '市场化销售的住宅，户型多样，面向普通购房者，如常见的高层住宅、多层洋房等', 1, 1, 1, NOW(), 1, NOW(), 0, 1, '普通商品房类型');

-- 保障性住房
INSERT INTO `sc_building_type_category` VALUES (4, 1, '保障性住房', 'AFFORDABLE_HOUSING', 'TYPE', 'PURPOSE', '政府提供的政策性住房', 2, 1, 1, NOW(), 1, NOW(), 0, 1, '保障性住房分类');
INSERT INTO `sc_building_type_category` VALUES (5, 4, '经济适用房', 'ECONOMIC_HOUSING', 'TYPE', 'PURPOSE', '政府限定价格、户型面积，面向中低收入家庭的政策性住房', 1, 1, 1, NOW(), 1, NOW(), 0, 1, '经济适用房类型');
INSERT INTO `sc_building_type_category` VALUES (6, 4, '廉租房/公租房', 'LOW_RENT_HOUSING', 'TYPE', 'PURPOSE', '政府或单位提供的保障性租赁住房，租金较低，解决住房困难群体居住问题', 2, 1, 1, NOW(), 1, NOW(), 0, 1, '廉租房公租房类型');
INSERT INTO `sc_building_type_category` VALUES (7, 4, '共有产权房', 'SHARED_OWNERSHIP', 'TYPE', 'PURPOSE', '政府与购房者按份共有产权，购房者可逐步回购产权', 3, 1, 1, NOW(), 1, NOW(), 0, 1, '共有产权房类型');

-- 公寓类
INSERT INTO `sc_building_type_category` VALUES (8, 1, '公寓类', 'APARTMENT', 'TYPE', 'PURPOSE', '公寓类建筑', 3, 1, 1, NOW(), 1, NOW(), 0, 1, '公寓建筑分类');
INSERT INTO `sc_building_type_category` VALUES (9, 8, '普通公寓', 'NORMAL_APARTMENT', 'TYPE', 'PURPOSE', '户型较小，通常为1-2居室，适合单身或小家庭，部分带商业配套', 1, 1, 1, NOW(), 1, NOW(), 0, 1, '普通公寓类型');
INSERT INTO `sc_building_type_category` VALUES (10, 8, '酒店式公寓', 'HOTEL_APARTMENT', 'TYPE', 'PURPOSE', '具备酒店服务设施与管理模式，可用于居住或短期租赁，产权多为商业性质', 2, 1, 1, NOW(), 1, NOW(), 0, 1, '酒店式公寓类型');
INSERT INTO `sc_building_type_category` VALUES (11, 8, 'Loft公寓', 'LOFT_APARTMENT', 'TYPE', 'PURPOSE', '层高较高（一般4.5米以上），可分隔为上下两层，空间利用率高，多为商业产权', 3, 1, 1, NOW(), 1, NOW(), 0, 1, 'Loft公寓类型');

-- 别墅类
INSERT INTO `sc_building_type_category` VALUES (12, 1, '别墅类', 'VILLA', 'TYPE', 'PURPOSE', '别墅类建筑', 4, 1, 1, NOW(), 1, NOW(), 0, 1, '别墅建筑分类');
INSERT INTO `sc_building_type_category` VALUES (13, 12, '独栋别墅', 'DETACHED_VILLA', 'TYPE', 'PURPOSE', '独立占地，拥有独立庭院，私密性强，建筑品质高', 1, 1, 1, NOW(), 1, NOW(), 0, 1, '独栋别墅类型');
INSERT INTO `sc_building_type_category` VALUES (14, 12, '联排别墅', 'TOWNHOUSE', 'TYPE', 'PURPOSE', '多户联立，共用墙体，每户有独立出入口和小庭院，性价比高于独栋', 2, 1, 1, NOW(), 1, NOW(), 0, 1, '联排别墅类型');
INSERT INTO `sc_building_type_category` VALUES (15, 12, '双拼别墅', 'DUPLEX_VILLA', 'TYPE', 'PURPOSE', '两户并列拼接，介于独栋与联排之间，采光和私密性较好', 3, 1, 1, NOW(), 1, NOW(), 0, 1, '双拼别墅类型');
INSERT INTO `sc_building_type_category` VALUES (16, 12, '叠拼别墅', 'STACKED_VILLA', 'TYPE', 'PURPOSE', '多层别墅上下叠加，通常4-6层，每户有独立楼梯，兼具别墅和洋房特点', 4, 1, 1, NOW(), 1, NOW(), 0, 1, '叠拼别墅类型');

-- 二、按建筑结构形式划分
INSERT INTO `sc_building_type_category` VALUES (42, 0, '按建筑结构形式划分', 'STRUCTURE_DIVISION', 'DIVISION', 'STRUCTURE', '根据建筑的主要承重结构形式进行分类', 2, 1, 1, NOW(), 1, NOW(), 0, 1, '建筑结构划分方式');
INSERT INTO `sc_building_type_category` VALUES (43, 42, '砖混结构', 'BRICK_CONCRETE', 'TYPE', 'STRUCTURE', '由砖、石等砌体作为竖向承重结构，楼板、屋顶等采用钢筋混凝土或木结构，多见于多层住宅、老旧建筑，抗震性能较弱', 1, 1, 1, NOW(), 1, NOW(), 0, 1, '砖混结构类型');
INSERT INTO `sc_building_type_category` VALUES (44, 42, '框架结构', 'FRAME_STRUCTURE', 'TYPE', 'STRUCTURE', '由梁、柱组成框架作为承重结构，墙体仅起围护作用，空间布局灵活，适用于多层写字楼、商场、厂房等', 2, 1, 1, NOW(), 1, NOW(), 0, 1, '框架结构类型');
INSERT INTO `sc_building_type_category` VALUES (45, 42, '剪力墙结构', 'SHEAR_WALL', 'TYPE', 'STRUCTURE', '由钢筋混凝土墙体承受竖向和水平荷载，整体性好、抗震性强，常用于高层住宅（如12层以上）', 3, 1, 1, NOW(), 1, NOW(), 0, 1, '剪力墙结构类型');

-- 三、按建筑高度/层数划分
INSERT INTO `sc_building_type_category` VALUES (49, 0, '按建筑高度/层数划分', 'HEIGHT_DIVISION', 'DIVISION', 'HEIGHT', '根据建筑的高度和层数进行分类（主要针对住宅和公共建筑）', 3, 1, 1, NOW(), 1, NOW(), 0, 1, '建筑高度层数划分方式');
INSERT INTO `sc_building_type_category` VALUES (50, 49, '低层', 'LOW_RISE', 'TYPE', 'HEIGHT', '高度≤10米，层数≤3层，如别墅、低层洋房、小型商铺', 1, 1, 1, NOW(), 1, NOW(), 0, 1, '低层建筑类型');
INSERT INTO `sc_building_type_category` VALUES (51, 49, '多层', 'MULTI_STORY', 'TYPE', 'HEIGHT', '高度10-24米，层数4-6层（住宅）或4-9层（公共建筑），如多层住宅、多层办公楼，通常无电梯或仅设一部电梯', 2, 1, 1, NOW(), 1, NOW(), 0, 1, '多层建筑类型');
INSERT INTO `sc_building_type_category` VALUES (52, 49, '中高层', 'MID_HIGH_RISE', 'TYPE', 'HEIGHT', '住宅层数7-9层，高度24-27米，公共建筑高度24-50米，一般需设电梯和消防设施', 3, 1, 1, NOW(), 1, NOW(), 0, 1, '中高层建筑类型');
INSERT INTO `sc_building_type_category` VALUES (53, 49, '高层', 'HIGH_RISE', 'TYPE', 'HEIGHT', '住宅层数10-18层（高度27-54米）、19-33层（高度54-100米）；公共建筑高度50-100米，如高层住宅、写字楼，需配备多部电梯、消防疏散通道、喷淋系统等', 4, 1, 1, NOW(), 1, NOW(), 0, 1, '高层建筑类型');
INSERT INTO `sc_building_type_category` VALUES (54, 49, '超高层', 'SUPER_HIGH_RISE', 'TYPE', 'HEIGHT', '高度＞100米的建筑，如超高层写字楼、酒店式公寓，对结构、消防、电梯等要求极高，通常为城市地标性建筑', 5, 1, 1, NOW(), 1, NOW(), 0, 1, '超高层建筑类型');

-- 四、按产权性质划分
INSERT INTO `sc_building_type_category` VALUES (55, 0, '按产权性质划分', 'PROPERTY_DIVISION', 'DIVISION', 'PROPERTY', '根据建筑的产权性质进行分类', 4, 1, 1, NOW(), 1, NOW(), 0, 1, '产权性质划分方式');
INSERT INTO `sc_building_type_category` VALUES (56, 55, '商品房', 'COMMERCIAL_PROPERTY', 'TYPE', 'PROPERTY', '完全市场化产权，可自由交易、转让，包括普通商品房、别墅、商业用房等', 1, 1, 1, NOW(), 1, NOW(), 0, 1, '商品房类型');
INSERT INTO `sc_building_type_category` VALUES (57, 55, '政策性住房', 'POLICY_HOUSING', 'TYPE', 'PROPERTY', '如经济适用房、廉租房、公租房、共有产权房等，产权受政策限制，交易需符合特定条件', 2, 1, 1, NOW(), 1, NOW(), 0, 1, '政策性住房类型');

-- 五、按户型配置与居住形态划分
INSERT INTO `sc_building_type_category` VALUES (61, 0, '按户型配置与居住形态划分', 'LAYOUT_DIVISION', 'DIVISION', 'LAYOUT', '根据住宅的户型配置和居住形态进行分类（针对住宅类）', 5, 1, 1, NOW(), 1, NOW(), 0, 1, '户型配置居住形态划分方式');
INSERT INTO `sc_building_type_category` VALUES (62, 61, '平层', 'FLAT_LAYOUT', 'TYPE', 'LAYOUT', '所有房间位于同一平面的住宅，户型方正，空间利用率高，是最常见的住宅形式', 1, 1, 1, NOW(), 1, NOW(), 0, 1, '平层类型');
INSERT INTO `sc_building_type_category` VALUES (63, 61, '复式', 'DUPLEX_LAYOUT', 'TYPE', 'LAYOUT', '套内空间跨越两层，通过楼梯连接，一层为动区（客厅、厨房），二层为静区（卧室），层高较普通住宅高（通常5.6米左右）', 2, 1, 1, NOW(), 1, NOW(), 0, 1, '复式类型');
INSERT INTO `sc_building_type_category` VALUES (66, 61, '塔楼', 'TOWER_BUILDING', 'TYPE', 'LAYOUT', '以电梯、楼梯为核心，户型围绕核心筒布置，通常为一梯多户（如4-8户），采光和通风可能不均匀，常见于高层住宅', 5, 1, 1, NOW(), 1, NOW(), 0, 1, '塔楼类型');
INSERT INTO `sc_building_type_category` VALUES (67, 61, '板楼', 'SLAB_BUILDING', 'TYPE', 'LAYOUT', '户型呈长条形，通常为一梯两户或两梯两户，南北通透，采光通风好，居住舒适度高，多见于多层或小高层住宅', 6, 1, 1, NOW(), 1, NOW(), 0, 1, '板楼类型');

-- 六、按建筑年代与风格划分
INSERT INTO `sc_building_type_category` VALUES (69, 0, '按建筑年代与风格划分', 'STYLE_DIVISION', 'DIVISION', 'STYLE', '根据建筑的建设年代和建筑风格进行分类', 6, 1, 1, NOW(), 1, NOW(), 0, 1, '建筑年代风格划分方式');
INSERT INTO `sc_building_type_category` VALUES (70, 69, '老式', 'OLD_STYLE', 'TYPE', 'STYLE', '多为2000年前建设，如红砖楼、筒子楼，户型小、配套设施简陋，无电梯或仅有一部简易电梯', 1, 1, 1, NOW(), 1, NOW(), 0, 1, '老式建筑类型');
INSERT INTO `sc_building_type_category` VALUES (71, 69, '新式', 'NEW_STYLE', 'TYPE', 'STYLE', '2000年后建设，设计更合理，配套完善（如电梯、停车位、物业管理），风格多样，如现代简约、新中式、欧式等', 2, 1, 1, NOW(), 1, NOW(), 0, 1, '新式建筑类型');
INSERT INTO `sc_building_type_category` VALUES (72, 69, '特色风格', 'SPECIAL_STYLE', 'TYPE', 'STYLE', '如中式园林风格（白墙黛瓦、庭院设计）、欧式古典风格（罗马柱、尖顶）、地中海风格（蓝色屋顶、拱形门窗）等，具有独特的建筑美学特征', 3, 1, 1, NOW(), 1, NOW(), 0, 1, '特色风格类型');

COMMIT;

SET FOREIGN_KEY_CHECKS = 1;
